package com.rabbiter.market.common.config;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
@ConfigurationProperties(prefix = "alipay")
public class AlipayConfig {

    /**
     * 支付宝网关（固定）
     */
    private String url;

    /**
     * APPID 即创建应用后生成。
     */
    private String appId;

    /**
     * 开发者私钥，由开发者自己生成
     */
    private String privateKey;

    /**
     * 参数返回格式，只支持 JSON（固定）
     */
    private String format;

    /**
     * 编码集，支持 GBK/UTF-8
     */
    private String charset;

    /**
     * 支付宝公钥，由支付宝生成
     */
    private String alipayPublicKey;

    /**
     * 生成签名字符串所使用的签名算法类型，目前支持 RSA2 算法
     */
    private String signType;

    /**
     * 回调地址
     */
    private String notifyUrl;

    /**
     * 订单过期时间
     */
    private String timeoutExpress;

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getAppId() {
        return appId;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getPrivateKey() {
        return privateKey;
    }

    public void setPrivateKey(String privateKey) {
        this.privateKey = privateKey;
    }

    public String getFormat() {
        return format;
    }

    public void setFormat(String format) {
        this.format = format;
    }

    public String getCharset() {
        return charset;
    }

    public void setCharset(String charset) {
        this.charset = charset;
    }

    public String getAlipayPublicKey() {
        return alipayPublicKey;
    }

    public void setAlipayPublicKey(String alipayPublicKey) {
        this.alipayPublicKey = alipayPublicKey;
    }

    public String getSignType() {
        return signType;
    }

    public void setSignType(String signType) {
        this.signType = signType;
    }

    public String getNotifyUrl() {
        return notifyUrl;
    }

    public void setNotifyUrl(String notifyUrl) {
        this.notifyUrl = notifyUrl;
    }

    public String getTimeoutExpress() {
        return timeoutExpress;
    }

    public void setTimeoutExpress(String timeoutExpress) {
        this.timeoutExpress = timeoutExpress;
    }
}
